With the introduction of the personal computer, the generation of software programs has become a rapidly growing field. Additionally, the number of users of the personal computer has continued to increase. The increase in the number of users of personal computers has this basis in an increase in computing power in the reduction in cost of such systems. Along with the increase with the number of users of these systems has been an increase in the number of less sophisticated users of such systems. Software programs are becoming complex to compensate for the skills of these less sophisticated users and in view of the competitive nature of the software business, software developers are encountering greater difficulty in thoroughly testing and correcting the software programs prior to the release thereof to the marketplace.
One known technique for providing updates to software programs installed on main frame computers requires the updates to be applied by a vendor's field representative or by a customer's highly trained computer professional. These updates are not user friendly and typically, cannot be applied by an ordinary end user. This technique for updating software programs installed on a computer system becomes very complicated when the installed program is an operating system or a communication software program having a plurality of features of which a combination of these features are installed on the computer system. This problem becomes more complex when the communication software program having a number of features is installed on a plurality of personal computers and a different combination of features is installed on the various personal computers.
Consequently, a user friendly technique is needed which facilitates the updating of software programs having a plurality of features installed in various combinations on a plurality of computers.